Fixed build with libpng16.
authorIOhannes m zmölnig <zmoelnig@umlautQ.umlaeute.mur.at>
Thu, 7 Apr 2016 20:05:10 +0000 (22:05 +0200)
committerIOhannes m zmölnig <zmoelnig@umlautQ.umlaeute.mur.at>
Thu, 7 Apr 2016 20:05:10 +0000 (22:05 +0200)
Thanks: Gianfranco Costamagna <locutusofborg@debian.org>
Closes: 820347
debian/patches/fix-build-libpng16.patch [new file with mode: 0644]
debian/patches/series

diff --git a/debian/patches/fix-build-libpng16.patch b/debian/patches/fix-build-libpng16.patch
new file mode 100644 (file)
index 0000000..ff9881c
--- /dev/null
@@ -0,0 +1,29 @@
+Description: Fix build with libpng16
+ This patch is inspired with the patch available at https://gist.github.com/balr0g/3004353
+Author: Gianfranco Costamagna <locutusofborg@debian.org>
+
+--- juce-4.1.0+repack.orig/modules/juce_graphics/image_formats/juce_PNGLoader.cpp
++++ juce-4.1.0+repack/modules/juce_graphics/image_formats/juce_PNGLoader.cpp
+@@ -320,7 +320,7 @@ namespace PNGHelpers
\r
+     static void JUCE_CDECL errorCallback (png_structp p, png_const_charp)\r
+     {\r
+-        longjmp (*(jmp_buf*) p->error_ptr, 1);\r
++        setjmp(png_jmpbuf(p));\r
+     }\r
\r
+     static void JUCE_CDECL warningCallback (png_structp, png_const_charp) {}\r
+@@ -442,8 +443,12 @@ namespace PNGHelpers
+             for (size_t y = 0; y < height; ++y)\r
+                 rows[y] = (png_bytep) (tempBuffer + lineStride * y);\r
\r
++            png_bytep trans_alpha;\r
++            int num_trans;\r
++            png_color_16p trans_color;\r
++            png_get_tRNS(pngReadStruct, pngInfoStruct,  &trans_alpha, &num_trans, &trans_color);\r
+             if (readImageData (pngReadStruct, pngInfoStruct, errorJumpBuf, rows))\r
+-                return createImageFromData ((colorType & PNG_COLOR_MASK_ALPHA) != 0 || pngInfoStruct->num_trans > 0,\r
++                return createImageFromData ((colorType & PNG_COLOR_MASK_ALPHA) != 0 || num_trans,\r
+                                             (int) width, (int) height, rows);\r
+         }\r
\r
index 29ef040f3ec29dcb4bcd792358322dc79e7da139..0764c5bf2322464e3b1c02ad71dba805f57eecc9 100644 (file)
@@ -1,4 +1,5 @@
 no-ztypes.patch
+fix-build-libpng16.patch
 #MANUAL#introjucer-makegenerator.patch
 reproducible-date.patch
 debian_apply-reproducible-date.patch